package com.wind.taobao.api.trade.item.rest
{
	import com.wind.taobao.api.IPrivateAPI;
	import com.wind.taobao.core.exception.InvalidRequestParametersException;
	import com.wind.taobao.core.util.TaobaoUtils;
	import com.wind.taobao.core.webservice.TaobaoRequest;

	/**
	 * taobao.items.onsale.get Request
	 * @author fxy
	 *
	 */
	public class ItemsOnSaleGetRequest extends TaobaoRequest implements IPrivateAPI
	{
		public override function get method():String
		{
			return "taobao.items.onsale.get"
		}
		/**
		 * Y 	 需返回的字段列表。可选值：Item商品结构体中的以下字段：approve_status,iid,num_iid,title,nick,type,cid,pic_path,num,props,valid_thru,list_time,price,has_discount,has_invoice,has_warranty,has_showcase,modified,delist_time,postage_id,seller_cids,outer_id；字段之间用“,”分隔。不支持其他字段，如果需要获取其他字段数据，调用taobao.item.get。
		 */
		[Bindable]
		public var fields:String="approve_status,iid,num_iid,title,nick,type,cid,pic_path,num,props,valid_thru,list_time,price,has_discount,has_invoice,has_warranty,has_showcase,modified,delist_time,postage_id,seller_cids,outer_id";
		/**
		 * N 	搜索字段。搜索商品的title。
		 */
		[Bindable]
		public var q:String;
		/**
		 * N 	商品类目ID。ItemCat中的cid。可以通过taobao.itemcats.get.v2取到
		 */
		[Bindable]
		public var cid:String;
		/**
		 * N 	卖家店铺内自定义类目ID。多个之间用“,”分隔。可以根据taobao.sellercats.list.get获得
		 */
		[Bindable]
		public var seller_cids:String;
		/**
		 *	N 	页码。取值范围:大于零的整数;默认值为1，即返回第一页数据。
		 */
		[Bindable]
		public var page_no:int;
		/**
		 * N 	每页条数。取值范围:大于零的整数;最大值：200；默认值：40。
		 */
		[Bindable]
		public var page_size:int;
		/**
		 * N 	是否参与会员折扣。可选值：true，false。默认不过滤该条件
		 */
		[Bindable]
		public var has_discount:String;
		/**
		 *	N 	是否橱窗推荐。 可选值：true，false。默认不过滤该条件
		 */
		[Bindable]
		public var has_showcase:String;
		/**
		 * N 	排序方式。格式为column:asc/desc ，column可选值:<br>
		 * list_time(上架时间),<br>
		 * delist_time(下架时间),<br>
		 * num(商品数量);<br>
		 * 默认上架时间降序(即最新上架排在前面)。如按照上架时间降序排序方式为list_time:desc
		 */
		[Bindable]
		public var order_by:String;

		public override function validate():void
		{
			if (!TaobaoUtils.hasValue(fields))
			{
				throw new InvalidRequestParametersException("请求参数[fields]不能为空");
			}
		}
	}
}